/*
Q:Go语言中的select语句是什么？
A:select语句式Go语言中用于处理通道操作的一种机制，它可以同时监听多个通道的读写操作，并且在其中任意一个通道就绪时执行相应的操作
*/

package main

import (
	"fmt"
)

func main() {
	ch1 := make(chan int)
	ch2 := make(chan int)

	go func() {
		ch1 <- 10
	}()

	go func() {
		ch2 <- 20
	}()

	select {
	case num := <-ch1:
		fmt.Println("Received from ch1:", num)
	case num := <-ch2:
		fmt.Println("Received from ch2:", num)
	}
}

/*
在上述代码中，我们创建了两个整型通道ch1和ch2。然后，我们启动了两个goroutine，分别向通道ch1和ch2发送数据。
在主goroutine中，我们使用select语句监听这两个通道的读操作，并在其中任意一个通道就绪时执行相应的操作。
在示例中，我们从就绪的通道中接收数据，并打印出来。

通过使用select语句，我们可以实现对多个通道的并发操作，并根据就绪的通道执行相应的操作。这在处理并发任务时非常有用。
*/
